The present invention relates generally to methods of establishing multimedia telecommunication (a multimedia “call”) between equipment (“terminals”). More particularly, the invention provides methods for reducing the time required to establish calls between terminals that implement the ITU-T H.324 Recommendation and other Standards and Recommendations derived from or related to this such as the 3G-324M recommendation developed and adopted by the Third Generation Partnership Projects (3GPP and 3GPP2). Merely by way of example, the invention has been applied to the establishment of multimedia telecommunication between 3G-324M (H.324M based protocol) multimedia handsets on a mobile telecommunications network, and between 3G-324M multimedia handsets and H.323 based terminals on a packet network using a Multimedia Gateway to mediate between the protocols used at each endpoint, but it would be recognized that the invention may also include other applications.
H.324 is an International Telecommunication Union (ITU) protocol standard for multimedia communication over general switched networks (GSTN). H.324M is an extension of H.324 for operations over mobile networks, and 3G-324M is a recommendation by the third generation partnership program (3GPP) defining adaptation of H.324M for use within 3GPP and also adopted by 3GPP2. We call H.324-like equipment devices and systems employing protocol based or derived from H.324. H.324-like equipment can connect to other H.324-like equipment via switching centers and to other non-H.324-like equipment through multimedia gateways. An example of a non-H.324-like equipment is an H.323 equipment. H.323 is an International Telecommunication Union protocol Standard for multimedia communication over non-guaranteed bandwidth packet networks. An H.323-like equipment is an equipment that employs a protocol based or derived from the H.323 protocol.
Without any loss of generality, we will use the term “H.324” to indicate H.324-like equipment including H.324M and 3G-324M equipment and “H.323” to indicate H.323-like equipment.
Also without any loss of generality we use the term “equipment” to indicate either a user end equipment such as a handset, or network end equipment such as a switch or gateway. The term “equipment” covers the meaning of “entity.” We also use the terms “equipment” and “terminal” interchangeably, and they both indicate the same meaning in the present document.
If a call is made between equipments which are an embodiment of the H.324, H.324M or 3G-324M, the first stage of the call is to establish an end-to-end bearer between the equipments. This stage is called Call Signaling and is outside the scope of H.324, except where modems and the General Switched Telephony Network are used. The second stage of the call is to establish the H.324 session, to provide a means of transporting video, audio and data between the equipments in a format that is known to, and supported by the equipments. In order to do this H.324M makes use of two further ITU-T Recommendations.
The first of these Recommendations used is H.223 “Multiplexing protocol for low bit rate multimedia communication”. H.223 specifies a frame-oriented multiplexing protocol which allows the transfer of any combination of digital voice, video and data (e.g. command and control) information over a single communication link. The H.223 may have a number of modes of operation, specified in Annexes A, B and C of the H.223 Recommendation that are intended to provide increased resilience in the presence of errors. These are also known as Mobile Levels 1, 2 and 3. H.223 without the application of any of these Annexes is also sometimes referred to as operating at Mobile Level 0 (base-line). H.324 has the concept of Logical Channels which is a way of providing virtual channels over the circuit switched link. The role of the multiplexer is to combine (multiplex) parts of the data chunks written on the logical channels into frames known as a Multiplexer Protocol Data Unit (MUX-PDU). Logical Channel 0 is always available and is used for Command and Control. Data (voice, video, command and control and other general data) is passed to/from the H.223 multiplexer through bitstream chunks called service data units (SDUs). Before being multiplexed, these different SDUs go through Adaptation Layers where extra information may be added for purposes such as error detection, sequence numbering and retransmission requests.
The second of these Recommendations is H.245 “Control protocol for multimedia communication” which specifies the syntax and semantics of terminal information messages as well as procedures to use them for in-band negotiation at the start of or during communication. The messages cover receiving and transmitting capabilities and preferences, logical channel signaling and control and indication. The messages that are specified in H.245 are expressed in the ITU-T Abstract Syntax Notation (ASN.1) and can be classified as of Request, Response, Command or Indication type. H.245 messages are encoded according to the ASN.1 standard before being transmitted. When a terminal sends an H.245 message of type Request it requires that an appropriate message of type Response is sent by the remote terminal. If the Response (sometimes referred to as an Ack for Acknowledgement) is not received within a certain time, the sending terminal will re-transmit the Request or take another appropriate action if no response has been received for repeated Requests. Re-transmission of requests may occur a number of times. Many of the H.245 messages associated with call set up are of the Request type.
H.245 also requires a reliable link layer for proper operation. The principal means of providing this, specified in Annex A of H.324, is to use the Simple Retransmission Protocol (SRP) or the Numbered Simple Retransmission Protocol (NSRP), in which one or more H.245 messages, known collectively as a MultimediaSystemControl PDU and in the present document as an H.245 PDU, are formed into SRP Command Frames prior to sending, and the receiving terminal must send an SRP Response Frame (Sometimes referred to as an SRP Ack) to acknowledge correct receipt of an SRP Command Frame. No further H.245 messages may be sent by a terminal until the SRP Ack for the last message has been received.
The combined effect of the requirement to send an H.245 Response message for each H.245 Request Message received, and of the need to receive an SRP Ack for every SRP Command Frame sent means that a single H.245 Request message may take some time to be conveyed successfully. The communication involved in sending an H.245 Request message from one terminal (A) to another (B), and getting an H.245 Response (Ack) message back is shown in FIG. 1A, which also shows the SRP Command Frames (SRP CF) and SRP Response Frames (SRP RF or SRP Ack) involved when single H.245 messages are formed into single SRP Command Frames. The H.324 standard allows for multiple H.245 messages to be concatenated into a single SRP Command Frame; however this capability is often not implemented, in which case such terminals may respond only to the first H.245 message encountered in an SRP Command Frame. In some cases, terminals which do not support this capability may malfunction upon receipt of an SDU containing multiple H.245 requests or responses.
We will refer to the time taken for information transmitted by one terminal to reach the other terminal and be reflected back in a response to the first terminal (see examples in FIG. 1A) as a “round trip delay.” It should be noted that this round-trip delay assumes devices involved in the media processing and communication do not add delays and is intended to be a representative measure of the network delay. An approximation of the round trip delay value can be determined by use of the H.245 RoundTripDelayRequest and RoundTripDelayResponse messages.
The key steps involved in setting up and connecting a typical H.324 call are as follows:
1. Call signaling (bearer establishment)—outside the scope of H.324. Normally a modem connection if GSTN, through ISDN, or signaling through mobile switching centers in the mobile case.
2. Mobile level detection (MLD)—Where a common Mobile Level is agreed on between equipments. This step is performed by H.324 equipment that supports mobile extensions such as H.324M and 3G-324M equipment.
3. Terminal Capability Exchange (TCS)—H.245 Messaging
4. Master Slave determination (MSD)—H.245 Messaging
5. Open/Close Logical Channels (OLC)—H.245 Messaging
6. Multiplexer Table Entries Exchange (MTE)—H.245 Messaging
Steps (3) to (6) are performed using a sequence of H.245 Request and Response messages as described above and illustrated in FIG. 1A. The full sequence of Request and Response messages involved in an H.324 call is shown in FIG. 1B. Note the order of steps (5) and (6) above can be interchanged. It should be noted that Steps (3) to (6) relate to procedures that are defined by underlying state machines that are also known as Signaling Entities. The relevant signaling entities are:
1. Capability Exchange Signaling Entity (CESE)
2. Master Slave Determination Signaling Entity (MSDSE)
3. Logical Channel Signaling Entity (LCSE)
4. Multiplex Table Signaling Entity (MTSE)
Once these steps have completed, media (video, audio and data) can flow between the terminals. Note the H.245 messages flow on the Logical Channel 0 which as previously described is predefined and carried by the means of the multiplexer predefined Multiplex Table Entry 0. Once other Multiplex Table Entries have been exchanged these can also be used in conjunction with H.245 messages.
The key steps above are often handled sequentially; however this results in as many as ten H.245 message round trip delays in order to establish an H.324 session with two logical channels in each direction. In addition, the SRP scheme (or Numbered version—NSRP, in cases where the mobile level is greater than zero) used for H.324/H.245, which requires an SRP message to be received by the endpoint for every message sent, prior to sending any other message, regardless of whether it is associated with the same Signaling Entity or not, further limits the scope to pipeline messages on the network, making call set up slower than if this were not the case. SRP messages are not shown in FIG. 1B.
For H.324M, the Terminal Capabilities Set request (TCS) step described above and shown in FIG. 1B is preceded by a mobile level detection/multiplexer synchronization phase. This consists of each terminal transmitting a repeating pattern of bits (flags) that indicate the highest Mobile Level at which it operates. Each terminal examines the flags that it is receiving. If these flags represent a lower Mobile Level then the terminal drops down to the same lower level. When both terminals are transmitting the same flag sequence this step completes.
Arising from the set of procedures described above that are required to take place to establish an H.324M call, when a call is made from a terminal which is an embodiment of the H.324 it is prone to suffer from long call set up time, which is the interval between the time that the call signaling is initiated to the time that the exchange of voice and video commences between an H324-like end-point (H.324, H.324M or 3G-324M) and other terminals whether H.324-like or not.
The ITU Recommendation H.323 uses H.245 in a similar manner to H.324 for signaling command, control and indication messages related to a call. Unlike H.324, H.323 is equipped with a number of features to speed up the call set up time between H.323 equipment. Similar techniques exist for the IETF Session Initiation Protocol (SIP) protocol.
Thus there exists a need for techniques to speed up the call set up between H.324 like terminals and other terminals (including servers) either of the H.324 type directly, or terminals such as H.323 via multimedia gateways that terminates the H.324 side and would have an H.324-like termination in them. The differences between the H.324 protocol (and its extensions such as H.324M and 3G-324M) and H.323 and other protocols mean that additional aspects need to be considered when introducing call establishment speed-up techniques for H.324-like terminals. Such differences include the information about mobile levels where they are used and the messaging and information related to the H.223 multiplexer such as its multiplex table entries, adaptation layers and so on.